<TITLE>sysconf</TITLE>
<body bgcolor="#ffffcc">
<hr>
<pre>



<h3>SYSCONF(3)          Linux Programmer's Manual          SYSCONF(3)
</h3>

<h3>NAME
</h3>       sysconf - Get configuration information at runtime

<h3>SYNOPSIS
</h3>       #include &lt;unistd.h&gt;

       long sysconf(int name);

<h3>DESCRIPTION
</h3>       sysconf()  provides a way for the application to determine
       values for system limits or options at runtime.

       The equivalent macros defined in &lt;unistd.h&gt; can only  give
       conservative  values;  if  an  application  wants  to take
       advantage of values which may change, a call to  sysconf()
       can be made, which may yield more liberal results.

       For  getting  information  about  a  particular  file, see
       fpathconf() or pathconf().

       The following values are supported for name.   First,  the
       POSIX.1 compatible values:

       _SC_ARG_MAX
              The  maximum  length of the arguments to the exec()
              family of functions;  the  corresponding  macro  is
              ARG_MAX.

       _SC_CHILD_MAX
              The  number  of simultaneous processes per user id,
              the corresponding macro is _POSIX_CHILD_MAX.

       _SC_CLK_TCK
              The number of clock ticks per  second;  the  corre-
              sponding macro is CLK_TCK.

       _SC_STREAM_MAX
              The  maximum  number  of streams that a process can
              have open at any  time.   The  corresponding  POSIX
              macro  is  STREAM_MAX, the corresponding standard C
              macro is FOPEN_MAX.

       _SC_TZNAME_MAX
              The maximum number of bytes in a timezone name, the
              corresponding macro is TZNAME_MAX.

       _SC_OPEN_MAX
              The maximum number of files that a process can have
              open  at  any  time,  the  corresponding  macro  is
              _POSIX_OPEN_MAX.

       _SC_JOB_CONTROL
              This indicates whether POSIX - style job control is
              supported,    the    corresponding     macro     is



<h3>GNU                       April 18, 1993                        1
</h3>




<h3>SYSCONF(3)          Linux Programmer's Manual          SYSCONF(3)
</h3>

              _POSIX_JOB_CONTROL.

       _SC_SAVED_IDS
              This  indicates  whether a process has a saved set-
              user-ID and a saved set-group-ID; the corresponding
              macro is _POSIX_SAVED_IDS.

       _SC_VERSION
              indicates  the  year and month the POSIX.1 standard
              was  approved  in  the  format  YYYYMML;the   value
              199009L indicates the most recent revision, 1990.

       Next, the POSIX.2 values:

       _SC_BC_BASE_MAX
              indicates  the  maximum obase value accepted by the
              bc(1)   utility;   the   corresponding   macro   is
              BC_BASE_MAX.

       _SC_BC_DIM_MAX
              indicates  the  maximum value of elements permitted
              in an array by bc(1); the  corresponding  macro  is
              BC_DIM_MAX.

       _SC_BC_SCALE_MAX
              indicates the maximum scale value allowed by bc(1);
              the corresponding macro is BC_SCALE_MAX.

       _SC_BC_STRING_MAX
              indicates the maximum length of a  string  accepted
              by bc(1); the corresponding macro is BC_STRING_MAX.

       _SC_COLL_WEIGHTS_MAX
              indicates the maximum numbers of weights  that  can
              be  assigned  to  an  entry of the LC_COLLATE order
              keyword in the locale definition file;  the  corre-
              sponding macro is COLL_WEIGHTS_MAX.

       _SC_EXPR_NEST_MAX
              is  the  maximum number of expressions which can be
              nested within parentheses by expr(1).   The  corre-
              sponding macro is EXPR_NEST_MAX.

       _SC_LINE_MAX
              The  maximum  length  of  a  utility's  input  line
              length, either from standard input or from a  file.
              This  includes  length for a trailing newline.  The
              corresponding macro is LINE_MAX.

       _SC_RE_DUP_MAX
              The maximum number of  repeated  occurrences  of  a
              regular   expression  when  the  interval  notation
              \{m,n\} is used. The  value  of  the  corresponding
              macro is RE_DUP_MAX.



<h3>GNU                       April 18, 1993                        2
</h3>




<h3>SYSCONF(3)          Linux Programmer's Manual          SYSCONF(3)
</h3>

       _SC_2_VERSION
              indicates  the  version  of the POSIX.2 standard in
              the format of YYYYMML.  The corresponding macro  is
              POSIX2_VERSION.

       _SC_2_DEV
              indicates  whether  the POSIX.2 C language develop-
              ment facilities are supported.   The  corresponding
              macro is POSIX2_C_DEV.

       _SC_2_FORT_DEV
              indicates  whether  the POSIX.2 FORTRAN development
              utilities are supported.  The  corresponding  macro
              is POSIX2_FORT_RUN.

       _SC_2_FORT_RUN
              indicates whether the POSIX.2 FORTRAN runtime util-
              ities are supported.  The  corresponding  macro  is
              POSIX2_FORT_RUN.

       POSIX2_LOCALEDEF
              indicates  whether  the POSIX.2 creation of locates
              via  locale(1)  is  supported.   The  corresponding
              macro is POSIX2_LOCALEDEF.

       _SC_2_SW_DEV
              indicates  whether the POSIX.2 software development
              utilities option is supported.   The  corresponding
              macro is POSIX2_SW_DEV.

<h3>RETURN VALUE
</h3>       The  value returned is the value of the system resource, 1
       if a queried option is available, 0 if it is not, or -1 on
       error.  The variable errno is not set.

<h3>CONFORMS TO
</h3>       POSIX.1, proposed POSIX.2

<h3>BUGS
</h3>       It  is  difficult  use ARG_MAX because it is not specified
       how much of the argument space for exec() is  consumed  by
       the user's environment variables.

       Some  returned  values  may be huge; they are not suitable
       for allocating memory.

       POSIX.2 is not yet an approved standard;  the  information
       in this manpage is subject to change.

</pre>
<hr>
<h3>SEE ALSO
</h3><p>
<a href=bc.htm>bc</a>, 
<a href=expr.htm>expr</a>, 
<a href=locale.htm>locale</a>, 
<a href=fpathconf.htm>fpathconf</a>, 
<a href=pathconf.htm>pathconf</a>, 
<pre>






<h3>GNU                       April 18, 1993                        3
</h3>

</pre>
<P>
<hr>
<p>
<center>
<table border=2 width=80%>
<tr align=center>
<td width=25%>
<a href=../cref.html>Top</a>
</td><td width=25%>
<a href=../master_index.html>Master Index</a>
</td><td width=25%>
<a href=../SYNTAX/keywords.html>Keywords</a>
</td><td width=25%>
<a href=../FUNCTIONS/funcref.htm>Functions</a>
</td>
</tr>
</table>
</center>
<p>
<hr>

This manual page was brought to you by <i>mjl_man V-2.0</i>
